Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

198
Views
Creación de un "diccionario de conjuntos"

Necesito almacenar datos de manera eficiente en algo que se parezca a un "diccionario de conjuntos", por ejemplo, tener un diccionario con múltiples valores (únicos) que coincidan con cada clave única. La fuente de mis datos sería un XML estructurado (no muy bien).

Mi idea es: voy a mirar a través de una serie de elementos y encontrar claves. Si la clave no existe, agréguela al diccionario, si ya existe, simplemente agregue un nuevo valor en la clave correspondiente.

Y el resultado sería algo como:

 { 'key1': {'1484', '1487', 1488', ...} 'key2': {'1485', '1486', '1489', ...} 'key3': {'1490', '1491', '1492', ...} ... }

Necesito agregar nuevas claves sobre la marcha. Necesito empujar valores únicos en cada conjunto. Necesito poder iterar a través de todo el diccionario.

No estoy seguro de si esto es factible, pero si alguien pudiera empujarme en la dirección correcta, estaría más que agradecido.

over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

No voy a comparar esto, pero en mi experiencia, los dictados nativos son más rápidos.

 store = {} for key, value in yoursource: try: store[key].add(value) except KeyError: store[key] = {value}
over 4 years ago · Santiago Trujillo Report

0

from collections import defaultdict mydict = defaultdict(set) mydict["key1"] |= {'1484', '1487', '1488'}

La iteración es como el dict normal.

over 4 years ago · Santiago Trujillo Report

0

Usandodict.setdefault() para crear la clave si no existe, e inicializándola con un conjunto vacío:

 store = {} for key, value in yoursource: store.setdefault(key, set()).add(value)
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!